iT邦幫忙

2023 iThome 鐵人賽

DAY 16
0
AI & Data

深入探索AI模型系列 第 16

【Day 16】 Decision Tree實作

  • 分享至 

  • xImage
  •  

今天要來利用python的sklearn來實作decision tree,今天的範例同樣是要預測sklearn裡的iris資料集。同樣的第一步,導入iris資料集的特徵(feature)為x、標籤(label)為y。完成後的x和y如下:

from sklearn import datasets
import pandas as pd

data = datasets.load_iris()
x = pd.DataFrame(data["data"], columns = data["feature_names"])
y = pd.DataFrame(data["target"], columns = ["target"])

https://ithelp.ithome.com.tw/upload/images/20230820/20150784OMuMsbm6wg.png https://ithelp.ithome.com.tw/upload/images/20230820/20150784qEfKCBMN0Y.png

接著要建構模型,這邊直接利用sklearn裡面的函式建構,建構完成後直接將x和y丟進去訓練。

from sklearn import tree

decisionTree = tree.DecisionTreeClassifier()
decisionTree.fit(x, y)

訓練完成過後,我們可以利用sklearn內建的函式—plot_tree來看看我們所做出的decision tree模型。

tree.plot_tree(decisionTree)

https://ithelp.ithome.com.tw/upload/images/20230820/20150784u7s0oYhVOM.png

如果想要將圖形給儲存下來,可以利用python的graphviz套件,他可以像下面一樣輸出一個.dot檔。

import graphviz

with open("decision_tree.dot", "w") as f:
    tree.export_graphviz(decisionTree, out_file = f)

最後利用下方的指令就可以獲得一個pdf檔囉!

!dot -Tpdf decision_tree.dot -o decision_tree.pdf

https://ithelp.ithome.com.tw/upload/images/20230820/20150784dBjsWYMvBj.png


上一篇
【Day 15】 CART Tree(Classification And Regression Tree)
下一篇
【Day 17】 Random Forest(隨機森林)
系列文
深入探索AI模型30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言